From a3341584902b441b86dc8539408b7b3f557b4902 Mon Sep 17 00:00:00 2001 From: robertl Date: Wed, 20 Jul 2005 11:15:20 +0000 Subject: [PATCH] Fix from Olaf. --- gpsbabel/gdb.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/gpsbabel/gdb.c b/gpsbabel/gdb.c index 0b01c0461..c914fbd01 100644 --- a/gpsbabel/gdb.c +++ b/gpsbabel/gdb.c @@ -447,18 +447,21 @@ gdb_read_wpt(const size_t fileofs, int *wptclass) delta = fileofs - pos; gdb_is_valid(delta > 0, "waypoint final"); - xtime = 0; - if (xclass == 0) + if ((delta & 1) == 0) { gdb_fread(buff, 1, 1, fin); - if (buff[0] == 1) - { - gdb_is_valid(delta==5, "??? waypoint time ???"); - gdb_fread_le(fin, &xtime, sizeof(xtime), 32, "xtime"); - } + delta--; + } + + xtime = 0; + gdb_fread(buff, 1, 1, fin); + if (buff[0] == 1) + { + gdb_is_valid(delta==5, "??? waypoint time ???"); + gdb_fread_le(fin, &xtime, sizeof(xtime), 32, "xtime"); + } else gdb_is_valid(delta==1, "no waypoint time"); - } *wptclass = xclass; -- 2.30.2